package com.zx.cloud.controller.client;

import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

import java.time.OffsetDateTime;

import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.zx.cloud.ApiVersion;
import com.zx.cloud.RequestLogging;
import com.zx.cloud.common.filter.CurrentUserId;
import com.zx.cloud.domain.ClientBankCard;
import com.zx.cloud.domain.ClientInfo;
import com.zx.cloud.domain.Proposal;
import com.zx.cloud.model.response.ObjectDataResponse;
import com.zx.cloud.model.response.Response;
import com.zx.cloud.util.Page;

/**
 * @Description:
 *
 * @author       Yan Weiwei
 * @Create Time: 2017年11月14日上午10:51:55
 */
@FeignClient(name = ClientInfoClient.SERVICE_ID, fallback = ClientInfoClientFallback.class)
public interface ClientInfoClient {

	/**
     * eureka service name
     */
    String SERVICE_ID = "trade-provider";
    
    @RequestMapping(value =ApiVersion.PROVIDER_V1_PREFIX+"/clientInfo/updateClientInfo", method = RequestMethod.POST)
    ObjectDataResponse<Integer> updateClientInfo(ClientInfo clientInfo);
    
    @RequestMapping(value =ApiVersion.PROVIDER_V1_PREFIX+"/clientInfo/getClientInfo", method = RequestMethod.POST)
    ObjectDataResponse<ClientInfo> getClientInfo();
    
    @RequestMapping(value =ApiVersion.PROVIDER_V1_PREFIX+"/clientInfo/handleClientBankCard", method = RequestMethod.POST)
    ObjectDataResponse<Integer> handleClientBankCard(ClientBankCard clientBankCard);
    
    @RequestMapping(value =ApiVersion.PROVIDER_V1_PREFIX+"/client/queryProposalApi", method = RequestMethod.POST)
    ObjectDataResponse<Page<Proposal>> queryProposalApi(Proposal proposal);
    
    @RequestMapping(value =ApiVersion.PROVIDER_V1_PREFIX+"/client/addProposalApi", method = RequestMethod.POST)
    ObjectDataResponse<Integer> addProposalApi(Proposal proposal);

	
}
